/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.opgea.token.dao;

import java.util.List;

import com.opgea.token.domain.entities.TokenDetails;

/**
 * 
 * @author Ramesh
 */
public interface TokenDetailsDAO {

    public TokenDetails create(TokenDetails tokenDetails);

    public TokenDetails update(TokenDetails tokenDetails);

    public TokenDetails delete(TokenDetails tokenDetailsId);

    public TokenDetails find(Long id);

    public List<TokenDetails> findAll();

    public List<TokenDetails> findAllByCompanyId(Long companyId);

    public List<TokenDetails> findAllByDestination(Long destinationId);

    public List<TokenDetails> findAllByDestination(Long companyId,
	    Long destinationId);

    public List<TokenDetails> searchTokens(Long companyId, String searchKey,
	    String tokenDate);
}
